typescript advantages